library(tidyverse)
library(openintro)
housing <- read.csv("http://www.science.smith.edu/~jcrouser/SDS192/landdata-states.csv")
glimpse(housing)
## Rows: 7,803
## Columns: 11
## $ State            <chr> "AK", "AK", "AK", "AK", "AK", "AK", "AK", "AK", "AK"…
## $ region           <chr> "West", "West", "West", "West", "West", "West", "Wes…
## $ Date             <dbl> 2010.25, 2010.50, 2009.75, 2010.00, 2008.00, 2008.25…
## $ Home.Value       <int> 224952, 225511, 225820, 224994, 234590, 233714, 2329…
## $ Structure.Cost   <int> 160599, 160252, 163791, 161787, 155400, 157458, 1600…
## $ Land.Value       <int> 64352, 65259, 62029, 63207, 79190, 76256, 72906, 694…
## $ Land.Share..Pct. <dbl> 28.6, 28.9, 27.5, 28.1, 33.8, 32.6, 31.3, 29.9, 28.7…
## $ Home.Price.Index <dbl> 1.481, 1.484, 1.486, 1.481, 1.544, 1.538, 1.534, 1.5…
## $ Land.Price.Index <dbl> 1.552, 1.576, 1.494, 1.524, 1.885, 1.817, 1.740, 1.6…
## $ Year             <int> 2010, 2010, 2009, 2009, 2007, 2008, 2008, 2008, 2008…
## $ Qrtr             <int> 1, 2, 3, 4, 4, 1, 2, 3, 4, 1, 2, 2, 3, 4, 1, 2, 3, 4…

Exercise 1

Create a scatterplot of the value of each home in the first quarter of 2013 as a function of the value of the land.
# Insert code for Exercise 1 here
hp2013Q1 <- housing %>%
  filter(Date == 2013.25)
ggplot(hp2013Q1, aes(y = Home.Value, x = Land.Value)) +
  geom_point() +
  geom_line()

Exercise 2

Store the scatterplot that you created in the previous exercise as an object called home_value_plot.
# Insert code for Exercise 2 here
home_value_plot <- ggplot(hp2013Q1, aes(y = Home.Value, x = Land.Value)) +
  geom_point() +
  geom_line()

Exercise 3

Does it makes sense to connect the observations with geom_line() in this case? Do the lines help us understand the connections between the observations better? What do the lines represent?

It doesn’t make sense, as it isn’t like the values increasing or decreasing, as each plot is a different house and therefore not connected. Therefore, the lines technically don’t represent anything, as the actual data plots are not connected.

Exercise 4: In your home_value_plot, map color to the cost of the structure and show your scatterplot.

# Insert code for Exercise 1 here
home_value_plot <- ggplot(hp2013Q1, aes(y = Home.Value, x = Land.Value, color =Structure.Cost)) +
  geom_point()

home_value_plot +
  geom_point(aes(shape = region))
## Warning: Removed 1 rows containing missing values (geom_point).

home_value_plot

home_plot <- ggplot(housing, aes(y = State, x = Home.Price.Index)) + 
  geom_point(aes(color = Date),
             alpha = 0.3,
             size = 1.5,
             position = position_jitter(width = 0, height = 0.25))

home_plot + 
  scale_color_continuous(breaks = c(1975.25, 1994.25, 2013.25),
                         labels = c(1971, 1994, 2013))

#home_plot +
#  scale_color_gradient2(breaks = c(1975.25, 1994.25, 2013.25),
  #                      labels = c(1971, 1994, 2013),
    #                    low = "blue",
   #                     high = "red",
           #             mid = "gray60",
         #               midpoint = 1994.25)
#^ to change the color to purple and pink

#home_value_plot <- ggplot(hp2013Q1, aes(y=Home.Value))
#home_value_plot <- home_value_plot +
 # aes(color = Structure.Cost) 

Exercise 5:

Since a home price index of 1 is an important benchmark, it is worth highlighting as contextual reference in our plot. Use geom_vline() to add a dotted, black, vertical line to the plot we created above.
# Insert code for Exercise 1 here
home_plot +
  geom_vline(xintercept = 1, linetype = "longdash", color = "pink")

### Exercise 6: ##### Recall that layers in ggplot2 are added sequentially. How would you put the dotted vertical line you created in the previous exercise behind the data values?

# Insert code for Exercise 1 here
home_plot <- ggplot(housing, aes(y = State, x = Home.Price.Index)) + 
  geom_vline(xintercept = 1, linetype = "longdash", color = "black") +
  geom_point(aes(color = Date),
             alpha = 0.3,
             size = 1.5,
             position = position_jitter(width = 0, height = 0.25))

home_plot + 
  scale_color_continuous(breaks = c(1975.25, 1994.25, 2013.25),
                         labels = c(1971, 1994, 2013))

### Exercise 7 ##### Use a facet_wrap to create a data graphic of your choice that illustrates something interesting about home prices.

# Insert code for Exercise 1 here
# home_plot <- ggplot(housing, aes(y = State, x = Home.Price.Index)) + 
#   facet_wrap() +
#   geom_point(aes(color = Date),
#              alpha = 0.3,
#              size = 1.5,
#              position = position_jitter(width = 0, height = 0.25))
# 
# home_plot + 
#   scale_color_continuous(breaks = c(1975.25, 1994.25, 2013.25),
#                          labels = c(1971, 1994, 2013))

Qrtr_plot <- ggplot(housing, aes(x = Year, y = Land.Value)) +
  ggtitle("Why the later years were better to sell your home") +
  scale_color_distiller(palette = "PuRd", direction = 1) +
  geom_line(aes(color = Home.Value )) +
  facet_wrap(~Qrtr) 
Qrtr_plot

# # year, land value
# qrtr

#region = facet

LS0tCnRpdGxlOiAiR3JhcGhpY3Mgd2l0aCBnZ3Bsb3QiCmF1dGhvcjogIkthdGVseW4gRGlheiIKZGF0ZTogImByIFN5cy5EYXRlKClgIgpvdXRwdXQ6IG9wZW5pbnRybzo6bGFiX3JlcG9ydAotLS0KCmBgYHtyIGxvYWQtcGFja2FnZXMsIG1lc3NhZ2U9RkFMU0V9CmxpYnJhcnkodGlkeXZlcnNlKQpsaWJyYXJ5KG9wZW5pbnRybykKaG91c2luZyA8LSByZWFkLmNzdigiaHR0cDovL3d3dy5zY2llbmNlLnNtaXRoLmVkdS9+amNyb3VzZXIvU0RTMTkyL2xhbmRkYXRhLXN0YXRlcy5jc3YiKQpnbGltcHNlKGhvdXNpbmcpCmBgYAoKIyMjIEV4ZXJjaXNlIDEKIyMjIyMgQ3JlYXRlIGEgc2NhdHRlcnBsb3Qgb2YgdGhlIHZhbHVlIG9mIGVhY2ggaG9tZSBpbiB0aGUgZmlyc3QgcXVhcnRlciBvZiAyMDEzIGFzIGEgZnVuY3Rpb24gb2YgdGhlIHZhbHVlIG9mIHRoZSBsYW5kLgoKCmBgYHtyIG1lc3NhZ2UgPSBGQUxTRX0KIyBJbnNlcnQgY29kZSBmb3IgRXhlcmNpc2UgMSBoZXJlCmhwMjAxM1ExIDwtIGhvdXNpbmcgJT4lCiAgZmlsdGVyKERhdGUgPT0gMjAxMy4yNSkKZ2dwbG90KGhwMjAxM1ExLCBhZXMoeSA9IEhvbWUuVmFsdWUsIHggPSBMYW5kLlZhbHVlKSkgKwogIGdlb21fcG9pbnQoKSArCiAgZ2VvbV9saW5lKCkKCmBgYAoKIyMjIEV4ZXJjaXNlIDIKIyMjIyMgU3RvcmUgdGhlIHNjYXR0ZXJwbG90IHRoYXQgeW91IGNyZWF0ZWQgaW4gdGhlIHByZXZpb3VzIGV4ZXJjaXNlIGFzIGFuIG9iamVjdCBjYWxsZWQgaG9tZV92YWx1ZV9wbG90LgoKCmBgYHtyIG1lc3NhZ2UgPSBGQUxTRX0KIyBJbnNlcnQgY29kZSBmb3IgRXhlcmNpc2UgMiBoZXJlCmhvbWVfdmFsdWVfcGxvdCA8LSBnZ3Bsb3QoaHAyMDEzUTEsIGFlcyh5ID0gSG9tZS5WYWx1ZSwgeCA9IExhbmQuVmFsdWUpKSArCiAgZ2VvbV9wb2ludCgpICsKICBnZW9tX2xpbmUoKQpgYGAKIyMjIEV4ZXJjaXNlIDMKIyMjIyMgRG9lcyBpdCBtYWtlcyBzZW5zZSB0byBjb25uZWN0IHRoZSBvYnNlcnZhdGlvbnMgd2l0aCBnZW9tX2xpbmUoKSBpbiB0aGlzIGNhc2U/IERvIHRoZSBsaW5lcyBoZWxwIHVzIHVuZGVyc3RhbmQgdGhlIGNvbm5lY3Rpb25zIGJldHdlZW4gdGhlIG9ic2VydmF0aW9ucyBiZXR0ZXI/IFdoYXQgZG8gdGhlIGxpbmVzIHJlcHJlc2VudD8KCkl0IGRvZXNuJ3QgbWFrZSBzZW5zZSwgYXMgaXQgaXNuJ3QgbGlrZSB0aGUgdmFsdWVzIGluY3JlYXNpbmcgb3IgZGVjcmVhc2luZywgYXMgZWFjaCBwbG90IGlzIGEgZGlmZmVyZW50IGhvdXNlIGFuZCB0aGVyZWZvcmUgbm90IGNvbm5lY3RlZC4gVGhlcmVmb3JlLCB0aGUgbGluZXMgdGVjaG5pY2FsbHkgZG9uJ3QgcmVwcmVzZW50IGFueXRoaW5nLCBhcyB0aGUgYWN0dWFsIGRhdGEgcGxvdHMgYXJlIG5vdCBjb25uZWN0ZWQuIAoKRXhlcmNpc2UgNDogSW4geW91ciBob21lX3ZhbHVlX3Bsb3QsIG1hcCBjb2xvciB0byB0aGUgY29zdCBvZiB0aGUgc3RydWN0dXJlIGFuZCBzaG93IHlvdXIgc2NhdHRlcnBsb3QuCmBgYHtyIG1lc3NzYWdlID0gRkFMU0V9CiMgSW5zZXJ0IGNvZGUgZm9yIEV4ZXJjaXNlIDEgaGVyZQpob21lX3ZhbHVlX3Bsb3QgPC0gZ2dwbG90KGhwMjAxM1ExLCBhZXMoeSA9IEhvbWUuVmFsdWUsIHggPSBMYW5kLlZhbHVlLCBjb2xvciA9U3RydWN0dXJlLkNvc3QpKSArCiAgZ2VvbV9wb2ludCgpCgpob21lX3ZhbHVlX3Bsb3QgKwogIGdlb21fcG9pbnQoYWVzKHNoYXBlID0gcmVnaW9uKSkKaG9tZV92YWx1ZV9wbG90Cgpob21lX3Bsb3QgPC0gZ2dwbG90KGhvdXNpbmcsIGFlcyh5ID0gU3RhdGUsIHggPSBIb21lLlByaWNlLkluZGV4KSkgKyAKICBnZW9tX3BvaW50KGFlcyhjb2xvciA9IERhdGUpLAogICAgICAgICAgICAgYWxwaGEgPSAwLjMsCiAgICAgICAgICAgICBzaXplID0gMS41LAogICAgICAgICAgICAgcG9zaXRpb24gPSBwb3NpdGlvbl9qaXR0ZXIod2lkdGggPSAwLCBoZWlnaHQgPSAwLjI1KSkKCmhvbWVfcGxvdCArIAogIHNjYWxlX2NvbG9yX2NvbnRpbnVvdXMoYnJlYWtzID0gYygxOTc1LjI1LCAxOTk0LjI1LCAyMDEzLjI1KSwKICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVscyA9IGMoMTk3MSwgMTk5NCwgMjAxMykpCgojaG9tZV9wbG90ICsKIyAgc2NhbGVfY29sb3JfZ3JhZGllbnQyKGJyZWFrcyA9IGMoMTk3NS4yNSwgMTk5NC4yNSwgMjAxMy4yNSksCiAgIyAgICAgICAgICAgICAgICAgICAgICBsYWJlbHMgPSBjKDE5NzEsIDE5OTQsIDIwMTMpLAogICAgIyAgICAgICAgICAgICAgICAgICAgbG93ID0gImJsdWUiLAogICAjICAgICAgICAgICAgICAgICAgICAgaGlnaCA9ICJyZWQiLAogICAgICAgICAgICMgICAgICAgICAgICAgbWlkID0gImdyYXk2MCIsCiAgICAgICAgICMgICAgICAgICAgICAgICBtaWRwb2ludCA9IDE5OTQuMjUpCiNeIHRvIGNoYW5nZSB0aGUgY29sb3IgdG8gcHVycGxlIGFuZCBwaW5rCgojaG9tZV92YWx1ZV9wbG90IDwtIGdncGxvdChocDIwMTNRMSwgYWVzKHk9SG9tZS5WYWx1ZSkpCiNob21lX3ZhbHVlX3Bsb3QgPC0gaG9tZV92YWx1ZV9wbG90ICsKICMgYWVzKGNvbG9yID0gU3RydWN0dXJlLkNvc3QpIAogCmBgYAoKIyMjIEV4ZXJjaXNlIDU6CiMjIyMjIFNpbmNlIGEgaG9tZSBwcmljZSBpbmRleCBvZiAxIGlzIGFuIGltcG9ydGFudCBiZW5jaG1hcmssIGl0IGlzIHdvcnRoIGhpZ2hsaWdodGluZyBhcyBjb250ZXh0dWFsIHJlZmVyZW5jZSBpbiBvdXIgcGxvdC4gVXNlIGdlb21fdmxpbmUoKSB0byBhZGQgYSBkb3R0ZWQsIGJsYWNrLCB2ZXJ0aWNhbCBsaW5lIHRvIHRoZSBwbG90IHdlIGNyZWF0ZWQgYWJvdmUuCgpgYGB7ciBtZXNzYWdlID0gRkFMU0V9CiMgSW5zZXJ0IGNvZGUgZm9yIEV4ZXJjaXNlIDEgaGVyZQpob21lX3Bsb3QgKwogIGdlb21fdmxpbmUoeGludGVyY2VwdCA9IDEsIGxpbmV0eXBlID0gImxvbmdkYXNoIiwgY29sb3IgPSAicGluayIpCgpgYGAKIyMjIEV4ZXJjaXNlIDY6CiMjIyMjIFJlY2FsbCB0aGF0IGxheWVycyBpbiBnZ3Bsb3QyIGFyZSBhZGRlZCBzZXF1ZW50aWFsbHkuIEhvdyB3b3VsZCB5b3UgcHV0IHRoZSBkb3R0ZWQgdmVydGljYWwgbGluZSB5b3UgY3JlYXRlZCBpbiB0aGUgcHJldmlvdXMgZXhlcmNpc2UgYmVoaW5kIHRoZSBkYXRhIHZhbHVlcz8KCmBgYHtyIG1lc3NhZ2UgPSBGQUxTRX0KIyBJbnNlcnQgY29kZSBmb3IgRXhlcmNpc2UgMSBoZXJlCmhvbWVfcGxvdCA8LSBnZ3Bsb3QoaG91c2luZywgYWVzKHkgPSBTdGF0ZSwgeCA9IEhvbWUuUHJpY2UuSW5kZXgpKSArIAogIGdlb21fdmxpbmUoeGludGVyY2VwdCA9IDEsIGxpbmV0eXBlID0gImxvbmdkYXNoIiwgY29sb3IgPSAiYmxhY2siKSArCiAgZ2VvbV9wb2ludChhZXMoY29sb3IgPSBEYXRlKSwKICAgICAgICAgICAgIGFscGhhID0gMC4zLAogICAgICAgICAgICAgc2l6ZSA9IDEuNSwKICAgICAgICAgICAgIHBvc2l0aW9uID0gcG9zaXRpb25faml0dGVyKHdpZHRoID0gMCwgaGVpZ2h0ID0gMC4yNSkpCgpob21lX3Bsb3QgKyAKICBzY2FsZV9jb2xvcl9jb250aW51b3VzKGJyZWFrcyA9IGMoMTk3NS4yNSwgMTk5NC4yNSwgMjAxMy4yNSksCiAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbHMgPSBjKDE5NzEsIDE5OTQsIDIwMTMpKQoKYGBgCiMjIyBFeGVyY2lzZSA3CiMjIyMjIFVzZSBhIGZhY2V0X3dyYXAgdG8gY3JlYXRlIGEgZGF0YSBncmFwaGljIG9mIHlvdXIgY2hvaWNlIHRoYXQgaWxsdXN0cmF0ZXMgc29tZXRoaW5nIGludGVyZXN0aW5nIGFib3V0IGhvbWUgcHJpY2VzLgoKYGBge3IgbWVzc2FnZSA9IEZBTFNFfQojIEluc2VydCBjb2RlIGZvciBFeGVyY2lzZSAxIGhlcmUKIyBob21lX3Bsb3QgPC0gZ2dwbG90KGhvdXNpbmcsIGFlcyh5ID0gU3RhdGUsIHggPSBIb21lLlByaWNlLkluZGV4KSkgKyAKIyAgIGZhY2V0X3dyYXAoKSArCiMgICBnZW9tX3BvaW50KGFlcyhjb2xvciA9IERhdGUpLAojICAgICAgICAgICAgICBhbHBoYSA9IDAuMywKIyAgICAgICAgICAgICAgc2l6ZSA9IDEuNSwKIyAgICAgICAgICAgICAgcG9zaXRpb24gPSBwb3NpdGlvbl9qaXR0ZXIod2lkdGggPSAwLCBoZWlnaHQgPSAwLjI1KSkKIyAKIyBob21lX3Bsb3QgKyAKIyAgIHNjYWxlX2NvbG9yX2NvbnRpbnVvdXMoYnJlYWtzID0gYygxOTc1LjI1LCAxOTk0LjI1LCAyMDEzLjI1KSwKIyAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWxzID0gYygxOTcxLCAxOTk0LCAyMDEzKSkKClFydHJfcGxvdCA8LSBnZ3Bsb3QoaG91c2luZywgYWVzKHggPSBZZWFyLCB5ID0gTGFuZC5WYWx1ZSkpICsKICBnZ3RpdGxlKCJXaHkgdGhlIGxhdGVyIHllYXJzIHdlcmUgYmV0dGVyIHRvIHNlbGwgeW91ciBob21lIikgKwogIHNjYWxlX2NvbG9yX2Rpc3RpbGxlcihwYWxldHRlID0gIlB1UmQiLCBkaXJlY3Rpb24gPSAxKSArCiAgZ2VvbV9saW5lKGFlcyhjb2xvciA9IEhvbWUuVmFsdWUgKSkgKwogIGZhY2V0X3dyYXAoflFydHIpIApRcnRyX3Bsb3QKICAKCiMgIyB5ZWFyLCBsYW5kIHZhbHVlCiMgcXJ0cgoKI3JlZ2lvbiA9IGZhY2V0CmBgYAoKLi4uCgo=